// -----------------------------
// Author: 		Dhaenens Gert 
// Creation: 	12/4/2014 6:14:08 PM				
// -----------------------------

#ifndef _GUIPass_h
#define _GUIPass_h

#include "RenderPass.h"

class GUIPass : public RenderPass
{
public:
	GUIPass(RenderManager* lpRenderManager, const RenderTargets& targets);
	virtual ~GUIPass();

	virtual void	Init(Application* lpApp);
	virtual void	Apply(Application* lpApp, Scene* lpScene);
	virtual void	UpdateTargets(Application* lpApp, const RenderTargets& targets);

private:

	UInt32			m_ThreadCountX;
	UInt32			m_ThreadCountY;
	UInt32			m_ThreadCountZ;
	IComputeShader*	m_lpGUICopyShader;

	GUIPass(const GUIPass& refGUIPass);
	GUIPass& operator=(const GUIPass& refGUIPass);
};

#endif